perm filename SCN.TMP[TEX,DEK] blob sn#554101 filedate 1981-01-05 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00004 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1
C00006 00003	  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1
C00009 00004	  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1
C00010 ENDMK
C⊗;
  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1

**** File 1) OLDSCN.TMP[TEX,DEK]/1P/96L
1)	if eof and fname[2]=0 then lookup(chan,fname[0]&fname[1]&"[TEX,SYS]",eof);
1)	ENDSUAI
**** File 2) NEWSCN.TMP[TEX,DEK]/1P/96L
2)	if eof and fname[2]=0 then lookup(chan,fname[0]&fname[1]&"[1,3]",eof);
2)	ENDSUAI
***************


**** File 1) OLDSCN.TMP[TEX,DEK]/1P/165L
1)	internal procedure definefont(integer f) # Do this after seeing "=" of font def;
1)	begin integer n,p,chan; string s;
1)	label try # go here to try or try again;
1)	try: scanfilename;
1)	IFSUAI
1)	    if fname[2]=0 then fname[2]←libraryarea;
1)	    s←fname[0]&fname[2];
1)	ENDSUAI
1)	IFMIT
1)	    if fnamedir=null then fnamedir←libraryarea;
1)	    s←fnamedir&fname1&" "&fname2;
1)	ENDMIT
1)	    if fontname[f] and not equ(s,fontname[f]) then
1)		begin error("Sorry, this font code is already defined to be "&fontname[f]);
**** File 2) NEWSCN.TMP[TEX,DEK]/1P/165L
2)	endc
2)	IFTOPS10 require "The procedure definefont must be adjusted for TOPS10." message;
2)	require "Either modify the definition in TEXF10.SAI, or add a TOPS10 case" message;
2)	require " to the definition that follows:" message; ENDTOPS10
2)	internal procedure definefont(integer f) # Do this after seeing "=" of font def;
2)	begin integer n,p,chan,dwidth,digits; real psize; string s,ss;
2)	label try # go here to try or try again;
2)	boolean atclause # first attempt to read the file;
2)	try: scanfilename; do getnctok until curcmd≠spacer; backinput;
2)	atclause←scanstring("at");
2)	if atclause then psize←scanposlength else psize←0;
2)	getformat(dwidth,digits);
2)	setformat(5,1);
2)	IFSUAI
2)	if fname[2]=0 then fname[2]←libraryarea; s←fname[0];
2)	if length(s)>6 then s←s[1 to 3]&s[∞-2 to ∞];
2)	ENDSUAI
2)	IFMIT
2)	if fnamedir=0 then fnamedir←libraryarea; s←fname1;
2)	ENDMIT
2)	IFTENEX
2)	if fname[0]=0 then fname[0]←libraryarea; s←fname[1];
2)	ENDTENEX
  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1

2)	s←s&" at "&(if atclause then cvf(psize) else "*")&"pts"
2)				# without directory or extension;
2)	if fontname[f] and not equ(s,fontname[f]) then
2)		begin error("Sorry, this font code is already defined to be "&fontname[f]);
***************


**** File 1) OLDSCN.TMP[TEX,DEK]/1P/181L
1)	    if parbase[f]=0 then
1)		    begin string ss; comment font information not preloaded;
1)		    open(chan←getchan,"DSK",8,2,0,0,0,eof);
1)	IFSUAI
1)		    lookup(chan,ss←fname[0]&deviceext&fname[2],eof);
1)	ENDSUAI
1)	IFMIT
1)		    lookup(chan,ss←fnamedir&fname1&" "&deviceext,eof);
1)	ENDMIT
1)		    if eof then
1)			    begin error("Lookup failed on file "&ss);
1)			    release(chan); go to try;
1)			    end;
1)		    readfontinfo(chan,f) # input font info for use by TEXSEM and TEXOUT;
1)		    release(chan);
1)		    end;
1)	    fontname[f]←s;
1)	    p←fontglue+f*gluespecsize # location of "font glue";
1)	    mem[p]←1000000 lsh infod # "infinite" reference count;
1)	    gluespace(p)←fontpar(f,spacewd);
1)	    gluestretch(p)←fontpar(f,spacestr);
1)	    glueshrink(p)←fontpar(f,spaceshr);
1)	end;
1)	endc
**** File 2) NEWSCN.TMP[TEX,DEK]/1P/196L
2)	fontname[f]←s;
2)	setformat(dwidth,digits);
2)	if parbase[f]=0 then
2)		begin comment font information not preloaded;
2)		open(chan←getchan,"DSK",8,2,0,0,0,eof);
2)	IFSUAI
2)		lookup(chan,ss←fname[0]&deviceext&fname[2],eof);
2)	ENDSUAI
2)	IFMIT
2)		lookup(chan,ss←fnamedir&fname1&" "&deviceext,eof);
2)	ENDMIT
2)	IFTENEX
2)		lookup(chan,ss←fname[0]&fname[1]&deviceext,eof);
2)	ENDTENEX
2)		if eof then
  1) OLDSCN.TMP[TEX,DEK] and 2) NEWSCN.TMP[TEX,DEK]	1-05-81 15:05	pages 1,1

2)			begin error("Lookup failed on file "&ss);
2)			release(chan); go to try;
2)			end;
2)		readfontinfo(chan,f,psize,atclause) # input font info for use by TEXSEM and TEXOUT;
2)		release(chan);
2)		end;
2)	p←fontglue+f*gluespecsize # location of "font glue";
2)	mem[p]←1000000 lsh infod # "infinite" reference count;
2)	gluespace(p)←fontpar(f,spacewd);
2)	gluestretch(p)←fontpar(f,spacestr);
2)	glueshrink(p)←fontpar(f,spaceshr);
2)	end;
2)	end
***************